1
マークダウン最優先のアーキテクチャとコアインフラストラクチャ
EvoClass-AI007Lesson 3
00:00

"ファイルこそ真実"の哲学

OpenClawの基盤は マークダウン最優先の哲学です。従来のブラックボックス型AIシステムとは異なり、OpenClawでは設定情報を文書として扱います。エージェントの存在のすべての側面——その性格、能力、運用ワークフロー——は人間が読みやすいマークダウンファイルに保存されます。これにより、『唯一の真実』(Source of Truth)が透明性を持ち、バージョン管理可能であり、人間とLLMの両方によって簡単に編集できるようになります。

  • SOUL.md: エージェントの核心的なアイデンティティと道徳的指針。
  • SKILL.md: エージェントが実際にできることを定義するマニフェスト。
  • AGENTS.md: マルチエージェントのオーケストレーションのためのエンジニアリング設計図。

コアインフラストラクチャのスタック

静的ファイルから生きるエージェントへ移行するために、OpenClawは安定性と柔軟性を備えた強力なバックエンドアーキテクチャを利用しています:

  1. エージェントランタイム:レーンキューを管理するエンジンルーム。 レーンキュー。非同期タスクが処理される際、 状態破壊が発生することなく、 セッション隔離 をすべてのやり取りにおいて維持します。
  2. ゲートウェイ:ネットワークアイデンティティとモデルルーティングを担当するコントロールプレーン。セキュリティシールドとして機能し、 リモートコード実行(RCE) といったリスクを軽減します。
  3. ツールレイヤー: エージェントがスキルマニフェストで定義された外部関数、API、ローカルスクリプトに接続するモジュール式インターフェース。
  4. モデル非依存エンジン:システムは特定のプロバイダに縛られていません。 openclaw.json ルーターを通じてClaude、GPT、またはローカルモデルとの切り替えが可能です。
  5. 表面・チャネル: これらはエージェントがユーザーに現れるインタラクションポイント(Web UI、ターミナル、モバイルなど)です。
設定:openclaw.json
{ "network_identity": "agent-01-alpha", "model_routing": { "primary": "anthropic/claude-3-opus", "fallback": "local/llama-3-8b" }, "env_injection": { "secure_pass": true, "policy": "prevent_leakage" } }
Type a command...
Question 1
Why does OpenClaw prioritize a Markdown-First Philosophy?
To make the files look better in a text editor.
To ensure the configuration serves as the definitive, human-readable source of truth.
To bypass the need for an LLM during execution.
Question 2
Which component is responsible for preventing State Corruption during multi-agent tasks?
The Tools Layer
The Gateway
The Agent Runtime (via Lane Queue)
Challenge: Security Breach
Mitigating RCE risks on public channels.
Scenario: You are deploying an agent to a public-facing Discord channel. You notice that the agent is trying to execute unverified shell commands, creating an RCE (Remote Code Execution) risk.
Secure
How do you use the Gateway and SKILL.md to secure the infrastructure?
Solution:
1. Gateway Level: Restrict the WebSocket API port (18789) to local traffic only or implement strict authentication tokens.
2. SKILL.md Level: Define strict "Permissions" in the YAML metadata for the Tools Layer.
3. Instruction Level: Update the Six-Layer Filtering Funnel within the skill manifest to reject any command string that contains sensitive shell operators.